package com.blog.cloud.auth.service;

import com.blog.cloud.api.dto.MobileLoginDto;
import com.blog.cloud.api.dto.NameLoginDto;
import com.blog.cloud.api.dto.UserRegisterDto;
import com.blog.cloud.api.vo.auth.UserVO;
import me.zhyd.oauth.model.AuthUser;

public interface AuthService {

    /**
     * 用户名密码登录
     */
    UserVO loginByUsername(NameLoginDto loginDto);

    /**
     * 手机号短信登录
     */
    UserVO loginByMobile(MobileLoginDto loginDto);

    /**
     * 用户注册
     */
    Boolean register(UserRegisterDto registerDto);

    /**
     * 三方授权登录成功时先判断数据库是否存在该用户
     */
    UserVO callBack(AuthUser authUser);
}
